import http from './interface'

/**
 * 将业务所有接口统一起来便于维护
 * 如果项目很大可以将 url 独立成文件，接口分成不同的模块
 * 
 */

// 单独导出(测试接口) import {test} from '@/common/vmeitime-http/'
// export const test = (data) => {
	// http.config.baseUrl = "https://www.fastmock.site/mock/068b59cf1ab3eeaf9245578cb0d027d5/rjc"
	//设置请求前拦截器
	// http.interceptor.request = (config) => {
	// 	config.header = {
	// 		"token": "111111111111111111111111111111"
	// 	}
	// }
	//设置请求结束后拦截器
// 	http.interceptor.response = (response) => {
// 		if(response.statusCode === 405){
// 			console.log('个性化response....', response)
// 		}
// 		//判断返回状态 执行相应操作
// 		return response;
// 	}
//     return http.request({
// 		baseUrl: 'https://unidemo.dcloud.net.cn/',
//         url: '/user',
// 		dataType: 'text',
//         data,
//     })
// }

// 登录注册
const login = (data={code: '123', name: '1', face: 'http://...', gender: '3'}) => {
    return http.request({
        url: '/api/login',
        method: 'POST', 
        data, 
		// handle:true
    })
}
// 基础信息
const me = (data) => {
    return http.request({
        url: '/api/me',
        method: 'GET', 
        data,
		// handle:true
    })
}
// 模拟登录
const testLogin = (data={id: 1}) => {
    return http.request({
        url: '/api/testlogin',
        method: 'POST', 
        data,
		// handle:true
    })
}
// 我的学生列表
const students = (data) => {
    return http.request({
        url: '/api/me/students',
        method: 'GET', 
        data,
		// handle:true
    })
}
// 新增学生
const addStudent = (data={student_name: '张三', age: '2', gender: '1', email: '10751773642@qq.com', avatar: '7', phone: '18224351926'}) => {
    return http.request({
        url: '/api/me/student',
        method: 'POST', 
        data,
		// handle:true
    })
}
// 修改学生资料
const changeStudent = (studentId, data={student_name: '李四'}) => {
    return http.request({
        url: `/api/me/student/${studentId}`,
        method: 'PUT',
        data,
		// handle:true
    })
}
// 删除学生
const deleteStudent = (studentId, data) => {
    return http.request({
        url: `/api/me/student/${studentId}`,
        method: 'DELETE', 
        data,
		// handle:true
    })
}
// 我的课程列表
const myCourses = (data) => {
    return http.request({
        url: '/api/me/course',
        method: 'GET', 
        data,
		// handle:true
    })
}
// 我的上课记录
const myClass = (data) => {
	return http.request({
		url: '/api/me/signs',
		method: 'GET',
		data
	})
}
// 上传图片
const uploadPicture = (data={image: '1571377889-111 (1).jpg'}) => {
    return http.request({
        url: '/api/upload',
        method: 'POST', 
        data,
		// handle:true
    })
}


// 教师列表
const teachers = (data) => {
    return http.request({
        url: '/api/teachers',
        method: 'GET', 
        data,
		// handle:true
    })
}
// 教师详情
const teacherDetails = (teacherId, data) => {
    return http.request({
        url: `/api/teacher/${teacherId}`,
        method: 'GET', 
        data,
		// handle:true
    })
}


// 课程列表
const courses = (data) => {
    return http.request({
        url: '/api/courses',
        method: 'GET', 
        data,
		// handle:true
    })
}
// 课程分类
const courseCategory = (data) => {
    return http.request({
        url: '/api/course/categories',
        method: 'GET', 
        data,
		// handle:true
    })
}
// 课程详情
const courseDetail = (courseId, data) => {
    return http.request({
        url: `/api/course/${courseId}`,
        method: 'GET', 
        data,
		// handle:true
    })
}


// 试课申请
const courseApply = (courseId, data={apply_date: '2019-11-7 23:12'}) => {
    return http.request({
        url: `/api/course/${courseId}/apply`,
        method: 'POST', 
        data,
		// handle:true
    })
}
// 我的预约
const myApply = (data) => {
    return http.request({
        url: `/api/me/tryClasses`,
        method: 'GET',
        data,
		// handle:true
    })
}


// banner列表
const banner = (data) => {
	return http.request({
		url: '/api/banners',
		method: 'GET',
		data,
	})
}
// 报名成功人员信息
const succeed = (data) => {
	return http.request({
		url: '/api/users/reserve',
		method: 'GET',
		data,
	})
}


// 新闻分类
const newsCategory = (data) => {
	return http.request({
		url: '/api/news/categories',
		method: 'GET',
		data,
	})
}
// 新闻列表
const news = (data) => {
	return http.request({
		url: '/api/news',
		method: 'GET',
		data,
	})
}
// 新闻详情
const newsDetails = (newsId, data) => {
	return http.request({
		url: `/api/news/${newsId}`,
		method: 'GET',
		data,
	})
}


// 创建订单
const createOrder = (courseId, data={student_id: '11', class_hour: '2'}) => {
	return http.request({
		url: `/api/course/${courseId}/order`,
		method: 'POST',
		data,
	})
}
// 模拟支付成功
const testPay = (orderId, data) => {
	return http.request({
		url: `/api/test/order/${orderId}`,
		method: 'POST',
		data,
	})
}
// 发起支付
const pay = (orderId, data) => {
	return http.request({
		url: `/api/order/${orderId}`,
		method: 'POST',
		data,
	})
}
// 订单列表
const orders = (data) => {
	return http.request({
		url: '/api/orders',
		method: 'GET',
		data,
	})
}
// 获取用户手机号
const phone = (data) => {
	return http.request({
		url: '/api/me/phone',
		method: 'PUT',
		data,
	})
}

// 默认全部导出  import api from '@/common/vmeitime-http/'
export default {
    login,	//登录注册
	me,	//基础信息
	testLogin,	//模拟登录
	students,	//我的学生列表
	addStudent,	//新增学生
	changeStudent,	//修改学生资料
	deleteStudent,	//删除学生
	myCourses,	// 我的课程列表
	myClass,	//我的上课记录
	uploadPicture,	//上传图片
	
	teachers,	//教师列表
	teacherDetails,	//教师详情
	
	courses,	//课程列表
	courseCategory,	//课程分类
	courseDetail,	//课程详情
	
	courseApply,	//试课申请
	myApply,	//我的预约
	
	banner,	//banner列表
	succeed,	//报名成功人员信息
	
	newsCategory,	//新闻分类
	news,	//新闻列表
	newsDetails,	//新闻详情
	
	createOrder,	//创建订单
	testPay,	//模拟支付成功
	pay,	//发起支付
	orders,	//订单列表
	phone	//获取用户手机号
}